專案簽署
HMI 裝置可設定為僅接受已簽署的專案。簽署可確保只有獲得授權的使用者才能更新 JMobile HMI Runtime 應用程式。
若要將 HMI 裝置設定為僅接受簽署的專案,則需有 x.509 憑證才能簽署專案。
x.509 憑證由兩個部分組成:
-
certificate.pfx
其中包含簽署專案所需之主要金鑰的檔案必須安裝在電腦上,並透過 JMobile Studio 用於簽署專案,以便在 HMI 裝置上下載 (主要金鑰為保留檔案,因為無論其擁有者是誰均可在面板上修改專案) -
certificate.crt
其中包含公開金鑰之檔案必須在 HMI 裝置上載入,以讓裝置能夠檢查是否已正確簽署專案 (此檔案將儲存於 HMI 裝置的受保護區域,因為如果未儲存於此將會失去保護)
我們使用安全雜湊演算法 (SHA256)
如何在電腦上安裝憑證
若要在電腦上安裝憑證,請按兩下 certific.pfx 檔案以啟動 Windows 安裝精靈。系統會提示您輸入與憑證相關聯的密碼以及安裝位置 (例如,可以安裝在「個人」資料夾中)
如何在 HMI 裝置上安裝憑證
在 HMI 裝置上,可從 HMI 裝置的「系統設定」將 certificate.crt 安裝至「安全性」區域 (請參考"安全性")。
在「安全性」區域中,選取:
- 網域 = HMI 執行階段
- 秘密 ID = 專案簽署
- 類型 = 憑證
- 使用「更新」按鈕載入憑證
如何在 JMobile PC Runtime 上安裝憑證
您可以從內容功能表中選取要使用的憑證(參考:"內容功能表選項")
請注意,要使用的憑證必須安裝在您有 PC 上(您可以連按兩下憑證檔案以進行安裝)
如何設定 JMobile Studio 使其在下載專案前即先簽署專案
安裝與憑證相關的兩個檔案後,即可將「專案屬性」中的「簽署專案」屬性設為真,以便針對將要下載至面板的應用程式進行簽署 (請參閱"專案")。當您在 HMI 裝置上下載專案時,系統會提示您輸入要使用的憑證,而該憑證必須與 HMI 裝置上安裝的憑證一致。
產生憑證的指令碼
以下為如何使用公共 OpenSSL-Win32 程式庫產生憑證的一個範例 (參考:https://www.openssl.org/)
檔案:CreateCertificates.cmd
@echo off set OpenSSL="C:\Program Files (x86)\OpenSSL-Win32\bin\openssl.exe" set CertificateName=MyCertificate rem Generate an RSA key %OpenSSL% genrsa -out certificate.key 4096 rem Creating Certificate Signing Requests %OpenSSL% req -new -sha256 -key certificate.key -out certificate.csr -subj "/ST=NY/C=US/L=New York/O=CompanyName/OU=R&D Team/CN=%CertificateName%" rem Self Sign the Certificate Signing Requests %OpenSSL% x509 -req -days 365 -in certificate.csr -signkey certificate.key -out certificate.crt rem Convert to .pfx file %OpenSSL% pkcs12 -export -out certificate.pfx -inkey certificate.key -in certificate.crt -CSP "Microsoft Enhanced RSA and AES Cryptographic Provider" pause
此程序需要建立密碼,之後需要該密碼才能存取憑證的主要金鑰。